package com.softer.wxzj.service;

import com.github.pagehelper.PageInfo;
import com.softer.wxzj.common.entity.CommonResult;
import com.softer.wxzj.common.entity.Page;
import com.softer.wxzj.entity.ExpPayReq;
import com.softer.wxzj.entity.ExpPayReqList;
import com.softer.wxzj.entity.ExpProjectReq;

import java.util.List;

/**
 * @author Gong Zhiyang
 * @date 2019/7/17
 */
public interface ExpPayReqService {
    /**
     * 项目拨款管理列表
     *
     * @param page          分页实体
     * @param expProjectReq 查询实体
     * @return 列表
     */
    PageInfo<ExpProjectReq> getPayReqList(Page page, ExpProjectReq expProjectReq,String fuzzy);
    /**
     * 新增拨款管理
     *
     * @param expPayReqList list   拨款批次
     *                      isLast 是否存在质保金
     *                      num    拨款批次数
     *                      reqId  项目ID
     * @return 新增结果
     */
    CommonResult add(ExpPayReqList expPayReqList);

    /**
     * 获取拨款管理明细
     *
     * @param reqId 项目ID
     * @param arcType 图档类型
     * @return 拨款管理明细
     */
    List<ExpPayReq> getList(String reqId, String arcType);

    /**
     * 新增拨款管理
     *
     * @param expPayReqList list   拨款批次
     *                      isLast 是否存在质保金
     *                      num    拨款批次数
     *                      reqId  项目ID
     * @return 新增结果
     */
    CommonResult update(ExpPayReqList expPayReqList);
    /**
     * 拨款申请
     *
     * @param id 拨款ID
     * @return 申请状态
     */
    CommonResult updateState(String id,String operNo);

    int getIsGrant(String reqId);

    /**
     * 拨款申请
     * @param expPayReq
     * @return
     */
    CommonResult grantApply(ExpPayReq expPayReq);

    CommonResult updateExpPayReqByList(ExpPayReqList expPayReqList);
}
